#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
    //通过ftok函数获取key值，以获取唯一的共享内存编号
    key_t mykey = 0;
    if((mykey = ftok(".",100)) == -1)
    {
        perror("fail to ftok");
        exit(-1);
    }
    
    //通过shmget函数获取key唯一标识的共享内存标识符
    int shm = 0;
    if((shm = shmget(mykey,500,IPC_CREAT|0666)) == -1)
    {
        perror("fail to shmget");
        exit(-1);
    }
    printf("shmid = %d\n",shm);
    system("ipcs -m");
    return 0;
}